#pragma once
#include "../../nclgl/vector3.h"

class CollisionData;

class Plane_c {
public:
	Plane_c(void ){};
	Plane_c(const Vector3 &normal , float distance , bool normalise=false);
	~Plane_c(void ){};

	void SetNormal(const Vector3 &normal) {this ->normal = normal;}
	Vector3 GetNormal () const {return normal;}

	void SetDistance(float dist) {distance = dist;}
	float GetDistance () const {return distance;}

	bool SphereInPlane(const Vector3& position, float radius, CollisionData* collisionData = NULL) const;
	
protected:
	Vector3 normal;
	float distance;
};